吉里吉里2 Ver2.32r2に付属のドキュメント追加

This commit is contained in:
Takenori Imoto
2016-09-08 17:28:20 +09:00
parent adbe9eca5e
commit 8713024d66
804 changed files with 52818 additions and 1 deletions

View File

@@ -0,0 +1,537 @@
<?xml version="1.0" encoding="Shift_JIS"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja" lang="ja">
<!-- generated by to_html.pl from simple.xml -->
<head>
<meta http-equiv="Content-Type" content="text/html; charset=Shift_JIS" />
<title>���{�I�Ȏg����</title>
<meta name="author" content="W.Dee" />
<meta http-equiv="Content-Style-Type" content="text/css" />
<meta http-equiv="Content-Script-Type" content="text/javascript" />
<link href="browser.css" type="text/css" rel="stylesheet" title="�g���g���֘A���t�@�����X�p�W���X�^�C��" />
<link href="mailto:[email protected]" rev="Made" />
<link href="index.html" target="_top" rel="Start" title="�g�b�v�y�[�W" />
</head>
<body>
<h1><a id="id318" name="id318">�R���p�C��</a>
</h1><div class="para"><div>
�@Borland C++ 5.5 �ȍ~ ( C++ Builder 5 �ȍ~ ) �ŃR���p�C�������邱�Ƃ��ł��܂��B<br />
<br />
�@�R���p�C���ɂ� boost.org �� regex++ ���K�v�ɂȂ��܂��B<br />
<br />
�@regex++ ���C���X�g�[���������A�e cpp �t�@�C�����R���p�C�������������B<br />
<br />
�@C++ Builder �̏ꍇ�́Atjs2 �̊e cpp �t�@�C�������ׂăv���W�F�N�g�ɒlj����邾���� OK �ł��B<br />
<br />
�@gcc 3 �ȍ~�ł��R���p�C���ł��܂� ( 2.95 �ł��R���p�C���ł��܂��� wstring �֘A�̏C�����K�v )�B<br />
</div></div>
<h1><a id="id319" name="id319">�ȒP�ȗ�</a>
</h1><div class="para"><div>
<br />
<br />
<code class="bq"><span class="weak">��:</span><br /><span class="linenumber">&nbsp;&nbsp;1|</span>#include&nbsp;&lt;stdio.h&gt;<br />
<span class="linenumber">&nbsp;&nbsp;2|</span>#include&nbsp;&quot;tjs.h&quot;<br />
<span class="linenumber">&nbsp;&nbsp;3|</span>#include&nbsp;&quot;tjsError.h&quot;<br />
<span class="linenumber">&nbsp;&nbsp;4|</span><br />
<span class="linenumber">&nbsp;&nbsp;5|</span>int&nbsp;main(int&nbsp;argc,&nbsp;char*&nbsp;argv[])<br />
<span class="linenumber">&nbsp;&nbsp;6|</span>{<br />
<span class="linenumber">&nbsp;&nbsp;7|</span>&nbsp;&nbsp;&nbsp;&nbsp;setlocale(LC_ALL,&nbsp;&quot;&quot;);&nbsp;<span class="comment">//&nbsp;���P�[�����ݒ�</span><br />
<span class="linenumber">&nbsp;&nbsp;8|</span><br />
<span class="linenumber">&nbsp;&nbsp;9|</span>&nbsp;&nbsp;&nbsp;&nbsp;tTJS&nbsp;*tjsengine&nbsp;=&nbsp;new&nbsp;tTJS();&nbsp;<span class="comment">//&nbsp;TJS2&nbsp;�X�N���v�g�G���W�����쐬</span><br />
<span class="linenumber">&nbsp;10|</span><br />
<span class="linenumber">&nbsp;11|</span>&nbsp;&nbsp;&nbsp;&nbsp;try<br />
<span class="linenumber">&nbsp;12|</span>&nbsp;&nbsp;&nbsp;&nbsp;{<br />
<span class="linenumber">&nbsp;13|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;tTJSVariant&nbsp;result;&nbsp;<span class="comment">//&nbsp;���ʂ��󂯎��邽�߂̕ϐ�</span><br />
<span class="linenumber">&nbsp;14|</span><br />
<span class="linenumber">&nbsp;15|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;tjsengine-&gt;ExecScript(<br />
<span class="linenumber">&nbsp;16|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;TJS_W(<br />
<span class="linenumber">&nbsp;17|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;function&nbsp;test(x,&nbsp;y)&nbsp;{&nbsp;return&nbsp;x*y;&nbsp;}&nbsp;\n&quot;<br />
<span class="linenumber">&nbsp;18|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;return&nbsp;test(4,&nbsp;5);\n&quot;),<br />
<span class="linenumber">&nbsp;19|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&amp;result,&nbsp;NULL,<br />
<span class="linenumber">&nbsp;20|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;TJS_W(&quot;test&nbsp;code&quot;));&nbsp;&nbsp;&nbsp;&nbsp;<span class="comment">//&nbsp;�e�X�g�X�N���v�g�����s</span><br />
<span class="linenumber">&nbsp;21|</span><br />
<span class="linenumber">&nbsp;22|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;printf(&quot;����&nbsp;:&nbsp;%d\n&quot;,&nbsp;(int)result);&nbsp;<span class="comment">//&nbsp;���ʂ��\��</span><br />
<span class="linenumber">&nbsp;23|</span>&nbsp;&nbsp;&nbsp;&nbsp;}<br />
<span class="linenumber">&nbsp;24|</span>&nbsp;&nbsp;&nbsp;&nbsp;catch(eTJSError&nbsp;&amp;e)<br />
<span class="linenumber">&nbsp;25|</span>&nbsp;&nbsp;&nbsp;&nbsp;{<br />
<span class="linenumber">&nbsp;26|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;printf(&quot;�G���[���������܂���&nbsp;:&nbsp;%ls\n&quot;,&nbsp;e.GetMessage().c_str());<br />
<span class="linenumber">&nbsp;27|</span>&nbsp;&nbsp;&nbsp;&nbsp;}<br />
<span class="linenumber">&nbsp;28|</span>&nbsp;&nbsp;&nbsp;&nbsp;catch(...)<br />
<span class="linenumber">&nbsp;29|</span>&nbsp;&nbsp;&nbsp;&nbsp;{<br />
<span class="linenumber">&nbsp;30|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;printf(&quot;�G���[���������܂���\n&quot;);<br />
<span class="linenumber">&nbsp;31|</span>&nbsp;&nbsp;&nbsp;&nbsp;}<br />
<span class="linenumber">&nbsp;32|</span><br />
<span class="linenumber">&nbsp;33|</span>&nbsp;&nbsp;&nbsp;&nbsp;tjsengine-&gt;Shutdown();&nbsp;<span class="comment">//&nbsp;TJS2&nbsp;�X�N���v�g�G���W�����V���b�g�_�E��</span><br />
<span class="linenumber">&nbsp;34|</span>&nbsp;&nbsp;&nbsp;&nbsp;tjsengine-&gt;Release();&nbsp;<span class="comment">//&nbsp;TJS2&nbsp;�X�N���v�g�G���W��������</span><br />
<span class="linenumber">&nbsp;35|</span><br />
<span class="linenumber">&nbsp;36|</span>&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;0;<br />
<span class="linenumber">&nbsp;37|</span>}<br />
</code>
<br />
<br />
<dl>
<dt>2�`3�s��</dt>
<dd>TJS2 ���g�p�����̂ɕK�v�ȃw�b�_�t�@�C�����ǂݍ����ł��܂��BtjsError.h �� TJS �� C++ ���O�Ɋւ����錾���܂܂��Ă��܂��B</dd>
<dt>7�s��</dt>
<dd>setlocale �Ń��P�[�����w�肵�Ă��܂��B���P�[�����w�肵�Ȃ��� &quot;C&quot; ���P�[���ɂȂ邽�߁A���{�ꕶ���̃i���[�����ƃ��C�h�����Ԃ̕ϊ������܂������܂����B</dd>
<dt>9�s��</dt>
<dd>TJS2 �X�N���v�g�G���W���� new ���Z�q�ō쐬���Ă��܂��B</dd>
<dt>11�s��</dt>
<dd>try �u���b�N�ɓ����Ă��܂��BTJS2 �̃G���[�͗��O�ɂ����ʒm�����邽�߁A���O�����ɂ͐T�d�ɂȂ��K�v�������܂��B</dd>
<dt>13�s��</dt>
<dd>�@�X�N���v�g�����s�������ʂ��󂯎��邽�߂� tTJSVariant �^�̕ϐ����錾���Ă��܂��B</dd>
<dt>15�`20�s��</dt>
<dd>�@tTJS::ExecScript ���g���ăX�N���v�g�����s���Ă��܂��B<br />
�@���P�����ɂ͎��s�����X�N���v�g���w�肵�܂��Btjs_char * �^�œn�����߂ɁA�����񃊃e������ TJS_W �}�N�����g���ă��C�h�������ɕϊ����Ă��܂��B�X�N���v�g�ł́A�֐� test �����`���A���̊֐����Ă񂾌��ʂ��Ԃ��Ă��܂��B<br />
�@���̗��ł� return ���ɂ������s�̌��ʂ��Ԃ��A������ result �ϐ��Ŏ󂯎����Ă��܂����A���ʂ��󂯎����K�v���Ȃ��ꍇ�� return ���� tTJS::ExecScript �̂Q�Ԗڂ̈������K�v�����܂��� ( ���̏ꍇ�͂Q�Ԗڂ̈����� NULL ���w�肵�܂� )�B<br />
�@tTJS::ExecScript �̂R�Ԗڂ̈����͎��s�R���e�L�X�g�ł����A�����ł� NULL ���w�肵�܂��BNULL ���w�肷���� �X�N���v�g�� global �R���e�L�X�g���Ŏ��s�����܂��B<br />
�@tTJS::ExecScript �̂S�Ԗڂ̈����́A���̃X�N���v�g�̖��O���w�肵�܂��BNULL�̏ꍇ�͓����Ƃ��Ĉ������܂��B�l�Ԃ��“ǂȖ��O�ł����K�v�������܂��B</dd>
<dt>22�s��</dt>
<dd>�@���ʂ��\�����Ă��܂��B�����ł� tTJSVariant �� int �^�ɃL���X�g���Ă��܂��B</dd>
<dt>24�s��</dt>
<dd>�@eTJSError �^�̗��O���󂯎����Ă��܂��B</dd>
<dt>26�s��</dt>
<dd>�@eTJSError::GetMessage ���g���āA���O�̗��R���\�����Ă��܂��B���b�Z�[�W�� const tjs_char * �ɕϊ����邽�߂� tTJSString::c_str ���g���Ă��܂��Btjs_char �� ���C�h�����̂��߁Aprintf �̕ϊ��w���q�ɂ� %ls ���w�肵�Ă��܂��B</dd>
<dt>28�s��</dt>
<dd>�@���̑��̗��O���󂯎����Ă��܂��B</dd>
<dt>33�`34�s��</dt>
<dd>�@TJS2 �X�N���v�g�G���W�����������Ă��܂��B�����ɐ旧���AtTJS::Shutdown ���g���� TJS2 �X�N���v�g�G���W�����V���b�g�_�E�����Ă��܂��B</dd></dl></div></div>
<h1><a id="id320" name="id320">TJS2���̊֐��̌Ăяo��</a>
</h1><div class="para"><div>
�@TJS2���Ő錾�����֐���C++�����Ăяo�����@�ł��B<br />
�@�O�q�� try �u���b�N�̒����ȉ��̂悤�ɏ����Ă݂܂��B<br />
<br />
<br />
<code class="bq"><span class="weak">��:</span><br /><span class="linenumber">&nbsp;&nbsp;1|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;tTJSVariant&nbsp;result;&nbsp;<span class="comment">//&nbsp;���ʂ��󂯎��邽�߂̕ϐ�</span><br />
<span class="linenumber">&nbsp;&nbsp;2|</span><br />
<span class="linenumber">&nbsp;&nbsp;3|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;tjsengine-&gt;ExecScript(<br />
<span class="linenumber">&nbsp;&nbsp;4|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;TJS_W(&quot;function&nbsp;test(x,&nbsp;y)&nbsp;{&nbsp;return&nbsp;x*y;&nbsp;}&quot;),&nbsp;NULL,&nbsp;NULL,&nbsp;TJS_W(&quot;test&quot;));<br />
<span class="linenumber">&nbsp;&nbsp;5|</span><br />
<span class="linenumber">&nbsp;&nbsp;6|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;tjsengine-&gt;EvalExpression(TJS_W(&quot;test(4,&nbsp;5)&quot;),&nbsp;&amp;result,&nbsp;NULL,&nbsp;NULL);<br />
<span class="linenumber">&nbsp;&nbsp;7|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="comment">//&nbsp;tTJS::EvalExpression&nbsp;���g���������s</span><br />
<span class="linenumber">&nbsp;&nbsp;8|</span><br />
<span class="linenumber">&nbsp;&nbsp;9|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;printf(&quot;����&nbsp;:&nbsp;%d\n&quot;,&nbsp;(int)result);&nbsp;<span class="comment">//&nbsp;���ʂ��\��</span><br />
<span class="linenumber">&nbsp;10|</span><br />
<span class="linenumber">&nbsp;11|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;iTJSDispatch2&nbsp;*&nbsp;global&nbsp;=&nbsp;tjsengine-&gt;GetGlobalNoAddRef();<br />
<span class="linenumber">&nbsp;12|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="comment">//&nbsp;�O���[�o���I�u�W�F�N�g���擾</span><br />
<span class="linenumber">&nbsp;13|</span><br />
<span class="linenumber">&nbsp;14|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;tTJSVariant&nbsp;param[]&nbsp;=&nbsp;{&nbsp;4,&nbsp;5&nbsp;};&nbsp;<span class="comment">//&nbsp;�p�����[�^�Ƃ��ēn���ϐ�</span><br />
<span class="linenumber">&nbsp;15|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;tTJSVariant&nbsp;*p_param[]&nbsp;=&nbsp;{&nbsp;param&nbsp;+&nbsp;0,&nbsp;param&nbsp;+&nbsp;1&nbsp;};&nbsp;<span class="comment">//&nbsp;�ϐ��ւ̃|�C���^�̔z��</span><br />
<span class="linenumber">&nbsp;16|</span><br />
<span class="linenumber">&nbsp;17|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;TJS_THROW_IF_ERROR(global-&gt;FuncCall(0,&nbsp;TJS_W(&quot;test&quot;),&nbsp;NULL,&nbsp;&amp;result,&nbsp;2,&nbsp;p_param,&nbsp;NULL));<br />
<span class="linenumber">&nbsp;18|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="comment">//&nbsp;test&nbsp;���֐��Ƃ��ČĂяo��</span><br />
<span class="linenumber">&nbsp;19|</span><br />
<span class="linenumber">&nbsp;20|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;printf(&quot;����&nbsp;:&nbsp;%d\n&quot;,&nbsp;(int)result);&nbsp;<span class="comment">//&nbsp;���ʂ��\��</span><br />
</code>
<br />
<br />
<dl>
<dt>3�`4�s��</dt>
<dd>�@�֐� test ���錾���Ă��܂��Btest �� global �ɓo�^�����܂��B</dd>
<dt>6�s��</dt>
<dd>�@tTJS::EvalExpression ���g���Ď������s���Ă��܂��B�����قǑ��x�I�ɃV�r�A�łȂ��Ă��悢�Ȃ��΁A���̂悤�� ���𕶎����Ƃ��ēn���Ă��̌��ʂ��󂯎����Ɗy�ł��B<br />
�@���Ȃ݂ɁA�P���Ȏ� ( �֐��錾�ȂǁA���̎��s�P�ʂ��܂܂Ȃ��悤�Ȃ��� ) �Ȃ��΁A�������x�A�R���p�C�����ʂ��L���b�V�������A�Q���ڈȍ~�̎��]���������ɍs�����Ƃ��ł��܂��B</dd>
<dt>11�s��</dt>
<dd>�@�O���[�o���I�u�W�F�N�g���擾���Ă��܂��BtTJS::GetGlobal �� tTJS::GetGlobalNoAddRef �̈Ⴂ�́A�O�҂� global �I�u�W�F�N�g�̎Q�ƃJ�E���^���C���N�������g�����̂ɑ΂��A���҂̓C���N�������g���Ȃ��ƌ������Ƃł��B<br />
�@�Q�ƃJ�E���^���C���N�������g���A�g���I���������f�N�������g�����ƌ������Ƃ́A���̊Ԓ��A���̃I�u�W�F�N�g�����ł��Ȃ��悤�Ƀ��b�N���������ƌ������Ƃł��B���̗��̂悤�ɁAglobal �I�u�W�F�N�g�����ł����S�z�̂Ȃ��ꍇ�͎Q�ƃJ�E���^�𑀍삷���K�v�͂����܂����̂� tTJS::GetGlobalNoAddRef ���g�����Ƃ��ł��܂��B�܂��A���̏ꍇ�͎g���I�������Ƃ��� Release �͕K�v�����܂����B</dd>
<dt>14�`15�s��</dt>
<dd>�@�֐��ɓn���p�����[�^���������Ă��܂��BiTJSDispatch::FuncCall �́A�֐��ɓn���p�����[�^�Ƃ��� tTJSVariant �^�̃|�C���^�̔z�����K�v�Ƃ��邽�߁A���̂悤�ȏ������K�v�ɂȂ��܂��B</dd>
<dt>17�s��</dt>
<dd>�@iTJSDispatch2::FuncCall ���g���āA�֐� &quot;test&quot; ���Ăяo���Ă��܂��B<br />
�@FuncCall �̍Ō��̈����́A�֐� test �ɓn������ this (���s�R���e�L�X�g) �ł����A���̗��Ő錾���� test ���ł� this ���g���Ă��Ȃ��̂� NULL ���w�肵�Ă��܂��܂����B���s���ׂ��R���e�L�X�g�������ꍇ�́A���̃I�u�W�F�N�g���w�肷���K�v�������܂��B<br />
�@TJS_THROW_IF_ERROR �́Atjs_error �^�̌��ʂ��G���[�������ꍇ�A�����ɑΉ������G���[���b�Z�[�W�ƂƂ��ɗ��O�𑗏o�����}�N���ł��B</dd></dl></div></div>
<h1><a id="id321" name="id321">�l�C�e�B�u�֐�</a>
</h1><div class="para"><div>
�@�l�C�e�B�u���� (C++�ȂǂŎ������ꂽ�֐�) ���쐬���ATJS2 �����炻���ɃA�N�Z�X���邱�Ƃ��ł��܂��B<br />
�@C++ �łȂ��Ă��AiTJSDispatch2 �������ł��錾���Ȃ��΁A�ǂ̂悤�Ȍ����ŏ����ꂽ�֐��ł��Ăяo�����Ƃ��ł��܂����AC++ �����Ԋy�ł��傤�B<br />
<br />
�@C++ �� �֐��������ꍇ�́AtTJSNativeFunction (tjsNative.h �ɋL�q) �����N���X�𓱏o�����̂��y�ł� (�������AiTJSDispatch2 �� FuncCall ���������邾���ł��֐��Ƃ��ē����͂ł��܂�)�B<br />
<br />
�@�^�����ꂽ�Q�‚̈��������Z���ĕԂ��A�ȒP�Ȋ֐����������Ă݂܂��B<br />
<br />
<code class="bq"><span class="weak">��:</span><br /><span class="linenumber">&nbsp;&nbsp;1|</span>class&nbsp;TestFunc&nbsp;:&nbsp;public&nbsp;tTJSNativeFunction<br />
<span class="linenumber">&nbsp;&nbsp;2|</span>{<br />
<span class="linenumber">&nbsp;&nbsp;3|</span>public:<br />
<span class="linenumber">&nbsp;&nbsp;4|</span>&nbsp;&nbsp;&nbsp;&nbsp;tjs_error&nbsp;Process(tTJSVariant&nbsp;*result,&nbsp;tjs_int&nbsp;numparams,<br />
<span class="linenumber">&nbsp;&nbsp;5|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;tTJSVariant&nbsp;**param,&nbsp;iTJSDispatch2&nbsp;*objthis)<br />
<span class="linenumber">&nbsp;&nbsp;6|</span>&nbsp;&nbsp;&nbsp;&nbsp;{<br />
<span class="linenumber">&nbsp;&nbsp;7|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(numparams&nbsp;&lt;&nbsp;2)&nbsp;return&nbsp;TJS_E_BADPARAMCOUNT;&nbsp;<span class="comment">//&nbsp;�����������Ȃ�</span><br />
<span class="linenumber">&nbsp;&nbsp;8|</span><br />
<span class="linenumber">&nbsp;&nbsp;9|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(!result)&nbsp;return&nbsp;TJS_S_OK;&nbsp;<span class="comment">//&nbsp;���ʂ��i�[���Ȃ��ėǂ��ꍇ�͂��̂܂܂��ǂ�</span><br />
<span class="linenumber">&nbsp;10|</span><br />
<span class="linenumber">&nbsp;11|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*result&nbsp;=&nbsp;*param[0]&nbsp;*&nbsp;*param[1];&nbsp;<span class="comment">//&nbsp;�v�Z</span><br />
<span class="linenumber">&nbsp;12|</span><br />
<span class="linenumber">&nbsp;13|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;TJS_S_OK;&nbsp;<span class="comment">//&nbsp;�����ɏI���������Ƃ���������&nbsp;TJS_S_OK&nbsp;���Ԃ�</span><br />
<span class="linenumber">&nbsp;14|</span>&nbsp;&nbsp;&nbsp;&nbsp;}<br />
<span class="linenumber">&nbsp;15|</span>};<br />
</code>
<br />
<br />
�@tTJSNativeFunction ���p�������N���X�Ŏ������ׂ��Ȃ̂́A���L�̒ʂ� Process ���\�b�h�����ł��B<br />
�@Process ���\�b�h�̈����͈ȉ��̒ʂ��ł��B<br />
<br />
<dl>
<dt>tTJSVariant *result</dt>
<dd>�@�֐��̌��ʂ��i�[���邽�߂� tTJSVariant �^�̕ϐ��ւ̃|�C���^���n�����܂��B<em>�Ăяo���������ʂ��K�v�Ƃ��Ȃ��ꍇ�� NULL ���n�����܂�</em>�̂Œ��ӂ��Ă��������B</dd>
<dt>tjs_int numparams</dt>
<dd>�@�֐��ɓn���ꂽ�����̐��ł��B</dd>
<dt>tTJSVariant **param</dt>
<dd>�@�֐��ɓn���ꂽ�������i�[���ꂽ tTJSVariant �^�̕ϐ��ւ̃|�C���^�̔z���ł��B</dd>
<dt>iTJSDispatch2 *objthis</dt>
<dd>�@�֐������s�������ׂ��R���e�L�X�g�ł��B�R���e�L�X�g�Ɉˑ����Ȃ������������ꍇ�͖������Ă��܂��܂����B</dd></dl><br />
<br />
<br />
�@�l�C�e�B�u�֐��� TJS2 �����A�N�Z�X�”\�ɂ��邽�߁ATJS2 �������A�N�Z�X�ł����I�u�W�F�N�g�ɓo�^�����K�v�������܂��B�ȉ��̗��ł́Aglobal �� &quot;test&quot; �Ƃ������O�œo�^���Ă��܂��B�܂��A���ۂɂ��̊֐����Ăяo���Ă��܂��B<br />
<br />
<code class="bq"><span class="weak">��:</span><br /><span class="linenumber">&nbsp;&nbsp;1|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;iTJSDispatch2&nbsp;*&nbsp;global&nbsp;=&nbsp;tjsengine-&gt;GetGlobalNoAddRef();<br />
<span class="linenumber">&nbsp;&nbsp;2|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="comment">//&nbsp;�O���[�o���I�u�W�F�N�g���擾</span><br />
<span class="linenumber">&nbsp;&nbsp;3|</span><br />
<span class="linenumber">&nbsp;&nbsp;4|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;iTJSDispatch2&nbsp;*func&nbsp;=&nbsp;new&nbsp;TestFunc();&nbsp;<span class="comment">//&nbsp;TestFunc&nbsp;�̃I�u�W�F�N�g���쐬</span><br />
<span class="linenumber">&nbsp;&nbsp;5|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;tTJSVariant&nbsp;func_var(func);&nbsp;<span class="comment">//&nbsp;tTJSVariant&nbsp;�^&nbsp;func_var&nbsp;�ɃI�u�W�F�N�g���ݒ�</span><br />
<span class="linenumber">&nbsp;&nbsp;6|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;func-&gt;Release();&nbsp;<span class="comment">//&nbsp;func&nbsp;��&nbsp;Release</span><br />
<span class="linenumber">&nbsp;&nbsp;7|</span><br />
<span class="linenumber">&nbsp;&nbsp;8|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;TJS_THROW_IF_ERROR(<br />
<span class="linenumber">&nbsp;&nbsp;9|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;global-&gt;PropSet(TJS_MEMBERENSURE,&nbsp;TJS_W(&quot;test&quot;),&nbsp;NULL,&nbsp;&amp;func_var,&nbsp;NULL));<br />
<span class="linenumber">&nbsp;10|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="comment">//&nbsp;�o�^</span><br />
<span class="linenumber">&nbsp;11|</span><br />
<span class="linenumber">&nbsp;12|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;tTJSVariant&nbsp;result;&nbsp;<span class="comment">//&nbsp;���ʂ��󂯎��邽�߂̕ϐ�</span><br />
<span class="linenumber">&nbsp;13|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;tjsengine-&gt;EvalExpression(TJS_W(&quot;test(4,&nbsp;5)&quot;),&nbsp;&amp;result,&nbsp;NULL,&nbsp;NULL);<br />
<span class="linenumber">&nbsp;14|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="comment">//&nbsp;tTJS::EvalExpression&nbsp;���g���������s</span><br />
<span class="linenumber">&nbsp;15|</span><br />
<span class="linenumber">&nbsp;16|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;printf(&quot;����&nbsp;:&nbsp;%d\n&quot;,&nbsp;(int)result);&nbsp;<span class="comment">//&nbsp;���ʂ��\��</span><br />
</code>
<br />
<br />
<dl>
<dt>4�`6�s��</dt>
<dd>�@�l�C�e�B�u�֐����������Ă����N���X TestFunc �̃I�u�W�F�N�g���쐬���A������ tTJSVariant �^�ɕϊ����Ă��܂��B<br />
�@5�s�ڂ� tTJSVariant �^�ɕϊ����Ă��܂����A���̎��_�� tTJSVariant �^�� �֐��I�u�W�F�N�g�̎Q�ƃJ�E���^�������I�ɊǗ������̂ŁA6�s�ڂŊ֐��I�u�W�F�N�g�� Release ���Ă��܂��B</dd>
<dt>8�`9�s��</dt>
<dd>�@global �I�u�W�F�N�g�Ɋ֐��� &quot;test&quot; �Ƃ������O�œo�^���Ă��܂��Bglobal �I�u�W�F�N�g�� iTJSDispatch2::PropSet ���Ă��ł��܂����A�����o���V�K�쐬�����邽�߂� TJS_MEMBERENSURE �t���O�𔺂��ČĂяo���Ă��܂��B</dd>
<dt>12�`16�s��</dt>
<dd>�@���ۂɊ֐����Ăяo���A���ʂ��\�����Ă��܂��B</dd></dl></div></div>
<h1><a id="id322" name="id322">�l�C�e�B�u�N���X</a>
</h1><div class="para"><div>
�@TJS2 �� C++ ���̌����ŏ����ꂽ�l�C�e�B�u�N���X���������߂̋@�\�������Ă��܂��B<br />
�@�e�I�u�W�F�N�g (iTJSDispatch2 �C���^�[�t�F�[�X) �ɂ̓l�C�e�B�u�C���X�^���X�ƌĂ΂����AiTJSNativeInstance �^�̃I�u�W�F�N�g���o�^���邱�Ƃ��ł��A������ �I�u�W�F�N�g���������o�����Ƃ��ł��܂��B<br />
�@�l�C�e�B�u�C���X�^���X�͈��ӂȃN���X ID �Ŏ��ʂ����A�l�C�e�B�u�N���X�̍쐬���ɂ̓N���X ID ���擾�����K�v�������܂��B<br />
<br />
�@�������A�������̑������s���ׂ̃}�N���Q�� tjsNative.h �ɒ��`�����Ă����̂ŁA�������𗘗p�����̂��y�ł��B<br />
�@�ȉ��̗��́A�������̃}�N�����g���ĊȒP�ȃN���X�������������̂ł��B<br />
<br />
�@�܂��A�l�C�e�B�u�C���X�^���X�̎����ł��B�l�C�e�B�u�C���X�^���X�����������ɂ� tTJSNativeInstance �����N���X�𓱏o���܂��BtTJSNativeInstance �� tjsNative.cpp / tjsNative.h �Ɏ��������Ă����N���X�ŁAiTJSNativeInstance �̊��{�I�ȓ������������Ă��܂��B<br />
<br />
<br />
<code class="bq"><span class="weak">��:</span><br /><span class="linenumber">&nbsp;&nbsp;1|</span>class&nbsp;NI_Test&nbsp;:&nbsp;public&nbsp;tTJSNativeInstance&nbsp;<span class="comment">//&nbsp;�l�C�e�B�u�C���X�^���X</span><br />
<span class="linenumber">&nbsp;&nbsp;2|</span>{<br />
<span class="linenumber">&nbsp;&nbsp;3|</span>public:<br />
<span class="linenumber">&nbsp;&nbsp;4|</span>&nbsp;&nbsp;&nbsp;&nbsp;NI_Test()<br />
<span class="linenumber">&nbsp;&nbsp;5|</span>&nbsp;&nbsp;&nbsp;&nbsp;{<br />
<span class="linenumber">&nbsp;&nbsp;6|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="comment">//&nbsp;�R���X�g���N�^</span><br />
<span class="linenumber">&nbsp;&nbsp;7|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Value&nbsp;=&nbsp;0;<br />
<span class="linenumber">&nbsp;&nbsp;8|</span>&nbsp;&nbsp;&nbsp;&nbsp;}<br />
<span class="linenumber">&nbsp;&nbsp;9|</span><br />
<span class="linenumber">&nbsp;10|</span>&nbsp;&nbsp;&nbsp;&nbsp;tjs_error&nbsp;TJS_INTF_METHOD<br />
<span class="linenumber">&nbsp;11|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Construct(tjs_int&nbsp;numparams,&nbsp;tTJSVariant&nbsp;**param,&nbsp;iTJSDispatch2&nbsp;*tjs_obj)<br />
<span class="linenumber">&nbsp;12|</span>&nbsp;&nbsp;&nbsp;&nbsp;{<br />
<span class="linenumber">&nbsp;13|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="comment">//&nbsp;TJS2&nbsp;�I�u�W�F�N�g���쐬�������Ƃ��ɌĂ΂���</span><br />
<span class="linenumber">&nbsp;14|</span><br />
<span class="linenumber">&nbsp;15|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="comment">//&nbsp;�����������΂����������l�Ƃ���&nbsp;Value&nbsp;�ɓ�����</span><br />
<span class="linenumber">&nbsp;16|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(numparams&nbsp;&gt;=&nbsp;1&nbsp;&amp;&amp;&nbsp;param[0]-&gt;Type()&nbsp;!=&nbsp;tvtVoid)<br />
<span class="linenumber">&nbsp;17|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Value&nbsp;=&nbsp;(tjs_int)*param[0];<br />
<span class="linenumber">&nbsp;18|</span><br />
<span class="linenumber">&nbsp;19|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;S_OK;<br />
<span class="linenumber">&nbsp;20|</span>&nbsp;&nbsp;&nbsp;&nbsp;}<br />
<span class="linenumber">&nbsp;21|</span><br />
<span class="linenumber">&nbsp;22|</span>&nbsp;&nbsp;&nbsp;&nbsp;void&nbsp;TJS_INTF_METHOD&nbsp;Invalidate()<br />
<span class="linenumber">&nbsp;23|</span>&nbsp;&nbsp;&nbsp;&nbsp;{<br />
<span class="linenumber">&nbsp;24|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="comment">//&nbsp;�I�u�W�F�N�g���������������Ƃ��ɌĂ΂���</span><br />
<span class="linenumber">&nbsp;25|</span>&nbsp;&nbsp;&nbsp;&nbsp;}<br />
<span class="linenumber">&nbsp;26|</span><br />
<span class="linenumber">&nbsp;27|</span>&nbsp;&nbsp;&nbsp;&nbsp;void&nbsp;SetValue(tjs_int&nbsp;n)&nbsp;{&nbsp;Value&nbsp;=&nbsp;n;&nbsp;}<br />
<span class="linenumber">&nbsp;28|</span>&nbsp;&nbsp;&nbsp;&nbsp;tjs_int&nbsp;GetValue()&nbsp;const&nbsp;{&nbsp;return&nbsp;Value;&nbsp;}<br />
<span class="linenumber">&nbsp;29|</span><br />
<span class="linenumber">&nbsp;30|</span>&nbsp;&nbsp;&nbsp;&nbsp;tjs_int&nbsp;GetSquare()&nbsp;const&nbsp;{&nbsp;return&nbsp;Value*Value;&nbsp;}<br />
<span class="linenumber">&nbsp;31|</span>&nbsp;&nbsp;&nbsp;&nbsp;void&nbsp;Add(tjs_int&nbsp;n)&nbsp;{&nbsp;Value&nbsp;+=&nbsp;n;&nbsp;}<br />
<span class="linenumber">&nbsp;32|</span>&nbsp;&nbsp;&nbsp;&nbsp;void&nbsp;Print()&nbsp;const&nbsp;{&nbsp;printf(&quot;%d\n&quot;,&nbsp;Value);&nbsp;}<br />
<span class="linenumber">&nbsp;33|</span><br />
<span class="linenumber">&nbsp;34|</span>private:<br />
<span class="linenumber">&nbsp;35|</span>&nbsp;&nbsp;&nbsp;&nbsp;tjs_int&nbsp;Value;&nbsp;<span class="comment">//&nbsp;�l</span><br />
<span class="linenumber">&nbsp;36|</span>};<br />
</code>
<br />
<br />
<dl>
<dt>35�s��</dt>
<dd>�@�b���O�サ�܂����A�f�[�^�����o�ł��B�l�C�e�B�u�C���X�^���X�ɂ́A�K�v�ȃf�[�^�����o�����R�ɏ������Ƃ��ł��܂��B</dd>
<dt>4�`8�s��</dt>
<dd>�@NI_Test �̃R���X�g���N�^�ł��BC++ �N���X�Ƃ��Ă̏������� ���q�� Construct �����������ōς܂��Ă����AConstruct �ł̏������͍ŏ����̕��ɂ��邱�Ƃ��������߂��܂��B<br />
�@���̗��ł́A�f�[�^�����o�� Value �ɏ����l�Ƃ��� 0 ���ݒ肵�Ă��܂��B</dd>
<dt>10�`20�s��</dt>
<dd>�@new ���Z�q�� TJS2 �I�u�W�F�N�g���쐬�������Ƃ��ɌĂ΂��܂��Bnumparams �� param ������ new ���Z�q�ɓn���ꂽ�������\���Ă��܂��B<br />
�@tjs_obj �����́A�쐬������ TJS �I�u�W�F�N�g�ł��B<br />
�@���̗��ł́A������������ (�����ɂ��ꂪ void �Ŗ������� )�A������ Value �̏����l�Ƃ��Đݒ肵�Ă��܂��B</dd>
<dt>22�`25�s��</dt>
<dd>�@�I�u�W�F�N�g���������������Ƃ��ɌĂ΂��郁�\�b�h�ł��B�����ɏI�������������Ɨǂ��ł��傤�B<br />
�@���̗��ł͉������܂����B</dd>
<dt>27�`32�s��</dt>
<dd>�@�f�[�^�����o�𑀍삷�邽�߂̌��J���\�b�h�Q�ł��B���q�����l�C�e�B�u�N���X���ŁA�������𗘗p�����R�[�h�������܂��B</dd></dl><br />
�@�I�u�W�F�N�g���쐬���邽�߂ɂ̓N���X���K�v�ł��̂ŁA�N���X���L�q���܂��B�N���X�� tTJSNativeClass �𓱏o�����`�Ŏ������܂��BtTJSNativeClass �� iTJSDispatch2 �C���^�[�t�F�[�X�������Ă��āA�l�C�e�B�u�N���X�Ƃ��ĐU�镑�����߂̊��{�I�ȓ��삪���������Ă��܂��B<br />
�@TJS �����A�N�Z�X�”\�ȃ��\�b�h���v���p�e�B�́A�l�C�e�B�u�N���X�̃R���X�g���N�^���ɋL�q���܂��B<br />
<br />
<br />
<code class="bq"><span class="weak">��:</span><br /><span class="linenumber">&nbsp;&nbsp;1|</span>class&nbsp;NC_Test&nbsp;:&nbsp;public&nbsp;tTJSNativeClass&nbsp;<span class="comment">//&nbsp;�l�C�e�B�u�N���X</span><br />
<span class="linenumber">&nbsp;&nbsp;2|</span>{<br />
<span class="linenumber">&nbsp;&nbsp;3|</span>public:<br />
<span class="linenumber">&nbsp;&nbsp;4|</span>&nbsp;&nbsp;&nbsp;&nbsp;NC_Test();&nbsp;<span class="comment">//&nbsp;�R���X�g���N�^;&nbsp;���ɋL�q</span><br />
<span class="linenumber">&nbsp;&nbsp;5|</span><br />
<span class="linenumber">&nbsp;&nbsp;6|</span>&nbsp;&nbsp;&nbsp;&nbsp;static&nbsp;tjs_uint32&nbsp;ClassID;&nbsp;<span class="comment">//&nbsp;�N���XID</span><br />
<span class="linenumber">&nbsp;&nbsp;7|</span><br />
<span class="linenumber">&nbsp;&nbsp;8|</span>private:<br />
<span class="linenumber">&nbsp;&nbsp;9|</span>&nbsp;&nbsp;&nbsp;&nbsp;tTJSNativeInstance&nbsp;*CreateNativeInstance()<br />
<span class="linenumber">&nbsp;10|</span>&nbsp;&nbsp;&nbsp;&nbsp;{<br />
<span class="linenumber">&nbsp;11|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;new&nbsp;NI_Test();&nbsp;<span class="comment">//&nbsp;�l�C�e�B�u�C���X�^���X���쐬���ĕԂ�</span><br />
<span class="linenumber">&nbsp;12|</span>&nbsp;&nbsp;&nbsp;&nbsp;}<br />
<span class="linenumber">&nbsp;13|</span>};<br />
<span class="linenumber">&nbsp;14|</span>tjs_uint32&nbsp;NC_Test::ClassID&nbsp;=&nbsp;(tjs_uint32)-1;&nbsp;<span class="comment">//&nbsp;�N���XID</span><br />
</code>
<br />
<br />
<dl>
<dt>4�s��</dt>
<dd>�@���̃N���X�̃R���X�g���N�^�ł��B�����͌��q���܂��B</dd>
<dt>6�s��</dt>
<dd>�@���̃N���X�̃N���X ID ���ێ����邽�߂̕ϐ��ł��B14�s�ڂɎ��̂������܂��B</dd>
<dt>9�`12�s��</dt>
<dd>�@CreateNativeInstance ���\�b�h�́A�l�C�e�B�u�C���X�^���X���쐬���ׂ��^�C�~���O�ŌĂ΂��郁�\�b�h�ł��B�����ł� NI_Test �N���X�̃I�u�W�F�N�g���쐬���ĕԂ��Ă��܂��B</dd></dl><br />
<br />
<br />
<br />
<code class="bq"><span class="weak">��:</span><br /><span class="linenumber">&nbsp;&nbsp;1|</span>NC_Test::NC_Test()&nbsp;:&nbsp;tTJSNativeClass(TJS_W(&quot;Test&quot;))<br />
<span class="linenumber">&nbsp;&nbsp;2|</span>{<br />
<span class="linenumber">&nbsp;&nbsp;3|</span>&nbsp;&nbsp;&nbsp;&nbsp;TJS_BEGIN_NATIVE_MEMBERS(<span class="comment">/*TJS&nbsp;class&nbsp;name*/</span>Test)<br />
<span class="linenumber">&nbsp;&nbsp;4|</span><br />
<span class="linenumber">&nbsp;&nbsp;5|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;TJS_DECL_EMPTY_FINALIZE_METHOD<br />
<span class="linenumber">&nbsp;&nbsp;6|</span><br />
<span class="linenumber">&nbsp;&nbsp;7|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;TJS_BEGIN_NATIVE_CONSTRUCTOR_DECL(<br />
<span class="linenumber">&nbsp;&nbsp;8|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="comment">/*var.name*/</span>_this,<br />
<span class="linenumber">&nbsp;&nbsp;9|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="comment">/*var.type*/</span>NI_Test,<br />
<span class="linenumber">&nbsp;10|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="comment">/*TJS&nbsp;class&nbsp;name*/</span>Test)<br />
<span class="linenumber">&nbsp;11|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br />
<span class="linenumber">&nbsp;12|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="comment">//&nbsp;NI_Test::Construct&nbsp;�ɂ����e���L�q�ł����̂�</span><br />
<span class="linenumber">&nbsp;13|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="comment">//&nbsp;�����ł͉������Ȃ�</span><br />
<span class="linenumber">&nbsp;14|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;TJS_S_OK;<br />
<span class="linenumber">&nbsp;15|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
<span class="linenumber">&nbsp;16|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;TJS_END_NATIVE_CONSTRUCTOR_DECL(<span class="comment">/*TJS&nbsp;class&nbsp;name*/</span>Test)<br />
<span class="linenumber">&nbsp;17|</span><br />
<span class="linenumber">&nbsp;18|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;TJS_BEGIN_NATIVE_METHOD_DECL(<span class="comment">/*func.&nbsp;name*/</span>print)&nbsp;<span class="comment">//&nbsp;print&nbsp;���\�b�h</span><br />
<span class="linenumber">&nbsp;19|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br />
<span class="linenumber">&nbsp;20|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;TJS_GET_NATIVE_INSTANCE(<span class="comment">/*var.&nbsp;name*/</span>_this,<br />
<span class="linenumber">&nbsp;21|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="comment">/*var.&nbsp;type*/</span>NI_Test);<br />
<span class="linenumber">&nbsp;22|</span><br />
<span class="linenumber">&nbsp;23|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;_this-&gt;Print();<br />
<span class="linenumber">&nbsp;24|</span><br />
<span class="linenumber">&nbsp;25|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;TJS_S_OK;<br />
<span class="linenumber">&nbsp;26|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
<span class="linenumber">&nbsp;27|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;TJS_END_NATIVE_METHOD_DECL(<span class="comment">/*func.&nbsp;name*/</span>print)<br />
<span class="linenumber">&nbsp;28|</span><br />
<span class="linenumber">&nbsp;29|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;TJS_BEGIN_NATIVE_METHOD_DECL(<span class="comment">/*func.&nbsp;name*/</span>add)&nbsp;<span class="comment">//&nbsp;add&nbsp;���\�b�h</span><br />
<span class="linenumber">&nbsp;30|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br />
<span class="linenumber">&nbsp;31|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;TJS_GET_NATIVE_INSTANCE(<span class="comment">/*var.&nbsp;name*/</span>_this,<br />
<span class="linenumber">&nbsp;32|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="comment">/*var.&nbsp;type*/</span>NI_Test);<br />
<span class="linenumber">&nbsp;33|</span><br />
<span class="linenumber">&nbsp;34|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(numparams&nbsp;&lt;&nbsp;1)&nbsp;return&nbsp;TJS_E_BADPARAMCOUNT;<br />
<span class="linenumber">&nbsp;35|</span><br />
<span class="linenumber">&nbsp;36|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;_this-&gt;Add((tjs_int)*param[0]);<br />
<span class="linenumber">&nbsp;37|</span><br />
<span class="linenumber">&nbsp;38|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;TJS_S_OK;<br />
<span class="linenumber">&nbsp;39|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
<span class="linenumber">&nbsp;40|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;TJS_END_NATIVE_METHOD_DECL(<span class="comment">/*func.&nbsp;name*/</span>add)<br />
<span class="linenumber">&nbsp;41|</span><br />
<span class="linenumber">&nbsp;42|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;TJS_BEGIN_NATIVE_PROP_DECL(value)&nbsp;<span class="comment">//&nbsp;value&nbsp;�v���p�e�B</span><br />
<span class="linenumber">&nbsp;43|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br />
<span class="linenumber">&nbsp;44|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;TJS_BEGIN_NATIVE_PROP_GETTER<br />
<span class="linenumber">&nbsp;45|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br />
<span class="linenumber">&nbsp;46|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;TJS_GET_NATIVE_INSTANCE(<span class="comment">/*var.&nbsp;name*/</span>_this,<br />
<span class="linenumber">&nbsp;47|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="comment">/*var.&nbsp;type*/</span>NI_Test);<br />
<span class="linenumber">&nbsp;48|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*result&nbsp;=&nbsp;_this-&gt;GetValue();<br />
<span class="linenumber">&nbsp;49|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;TJS_S_OK;<br />
<span class="linenumber">&nbsp;50|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
<span class="linenumber">&nbsp;51|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;TJS_END_NATIVE_PROP_GETTER<br />
<span class="linenumber">&nbsp;52|</span><br />
<span class="linenumber">&nbsp;53|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;TJS_BEGIN_NATIVE_PROP_SETTER<br />
<span class="linenumber">&nbsp;54|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br />
<span class="linenumber">&nbsp;55|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;TJS_GET_NATIVE_INSTANCE(<span class="comment">/*var.&nbsp;name*/</span>_this,<br />
<span class="linenumber">&nbsp;56|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="comment">/*var.&nbsp;type*/</span>NI_Test);<br />
<span class="linenumber">&nbsp;57|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;_this-&gt;SetValue((tjs_int)*param);<br />
<span class="linenumber">&nbsp;58|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;TJS_S_OK;<br />
<span class="linenumber">&nbsp;59|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
<span class="linenumber">&nbsp;60|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;TJS_END_NATIVE_PROP_SETTER<br />
<span class="linenumber">&nbsp;61|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
<span class="linenumber">&nbsp;62|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;TJS_END_NATIVE_PROP_DECL(value)<br />
<span class="linenumber">&nbsp;63|</span><br />
<span class="linenumber">&nbsp;64|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;TJS_BEGIN_NATIVE_PROP_DECL(square)&nbsp;<span class="comment">//&nbsp;square&nbsp;�ǂݏo�����p�v���p�e�B</span><br />
<span class="linenumber">&nbsp;65|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br />
<span class="linenumber">&nbsp;66|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;TJS_BEGIN_NATIVE_PROP_GETTER<br />
<span class="linenumber">&nbsp;67|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br />
<span class="linenumber">&nbsp;68|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;TJS_GET_NATIVE_INSTANCE(<span class="comment">/*var.&nbsp;name*/</span>_this,<br />
<span class="linenumber">&nbsp;69|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="comment">/*var.&nbsp;type*/</span>NI_Test);<br />
<span class="linenumber">&nbsp;70|</span><br />
<span class="linenumber">&nbsp;71|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;*result&nbsp;=&nbsp;_this-&gt;GetSquare();<br />
<span class="linenumber">&nbsp;72|</span><br />
<span class="linenumber">&nbsp;73|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return&nbsp;TJS_S_OK;<br />
<span class="linenumber">&nbsp;74|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
<span class="linenumber">&nbsp;75|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;TJS_END_NATIVE_PROP_GETTER<br />
<span class="linenumber">&nbsp;76|</span><br />
<span class="linenumber">&nbsp;77|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;TJS_DENY_NATIVE_PROP_SETTER<br />
<span class="linenumber">&nbsp;78|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
<span class="linenumber">&nbsp;79|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;TJS_END_NATIVE_PROP_DECL(square)<br />
<span class="linenumber">&nbsp;80|</span><br />
<span class="linenumber">&nbsp;81|</span>&nbsp;&nbsp;&nbsp;&nbsp;TJS_END_NATIVE_MEMBERS<br />
<span class="linenumber">&nbsp;82|</span>}<br />
</code>
<br />
<br />
<dl>
<dt>1�s��</dt>
<dd>�@NC_Test �̃R���X�g���N�^�ł��B�e�N���X�ł��� tTJSNativeClass �̃R���X�g���N�^�ɂ� TJS2 ���Ŏg�p�����N���X�����w�肵�܂��B</dd>
<dt>3�s��</dt>
<dd>�@TJS_BEGIN_NATIVE_MEMBERS �}�N���ł��B�����ɂ� TJS2 ���Ŏg�p�����N���X�����w�肵�܂��B<br />
�@���̃}�N���� TJS_END_NATIVE_MEMBERS �}�N���ŋ��܂ꂽ�ꏊ�ɁA�N���X�̃����o�ƂȂ��ׂ����\�b�h���v���p�e�B�̋L�q�����܂��B</dd>
<dt>4�s��</dt>
<dd>�@���� finalize ���\�b�h���錾���Ă��܂��Bfinalize �ɑ������鏈���� tTJSNativeInstance::Invalidate ���I�[�o�[���C�h���邱�Ƃł������ł��܂��̂ŁA�ʏ��͋��̃��\�b�h�ŏ\���ł��B
</dd>
<dt>7�`16�s��</dt>
<dd>�@(TJS��) �R���X�g���N�^���錾���Ă��܂��BTJS �ŃN���X�������Ƃ��A�N���X���ŃN���X�Ɠ����̃��\�b�h���錾���Ă��镔���ɑ������܂��B<br />
<br />
�@TJS_BEGIN_NATIVE_CONSTRUCTOR_DECL �}�N���̂P�Ԗڂ̈����̓l�C�e�B�u�C���X�^���X�Ɋ��蓖�Ă��ϐ����ŁA�Q���ʖڂ̈����͂��̕ϐ��̌^���ł��B���̗��ł̂��̃u���b�N���ł� NI_Test * _this �Ƃ����ϐ������p�”\�ŁA�l�C�e�B�u�C���X�^���X�ɃA�N�Z�X���邱�Ƃ��ł��܂��B<br />
�@�}�N���̂R�Ԗڂ̈����́ATJS ���Ŏg�p�����N���X�����w�肵�܂��BTJS_END_NATIVE_CONSTRUCTOR_DECL �}�N���̈��������l�ł��B<br />
�@�������A�R���X�g���N�^�ɑ������鏈���� tTJSNativeInstance::Construct ���I�[�o�[���C�h���鎖�Ŏ����ł����̂ŁA�����ł͉��������� S_OK ���Ԃ��܂��B
</dd>
<dt>18�`27�s��</dt>
<dd>�@print ���\�b�h���錾���Ă��܂��B���\�b�h���� TJS_BEGIN_NATIVE_METHOD_DECL �� TJS_END_NATIVE_METHOD_DECL �̗��}�N���ɓ������̂��w�肷���K�v�������܂��B<br />
�@���̃}�N�����Ŏg�p�”\�ȕϐ��� tjs_int numparams �� tTJSVariant **param �������āA���ꂼ���A�n���ꂽ�����̐��ƈ����������Ă��܂��B���̃��\�b�h�ł͂������͎g�p���Ă��܂����B<br />
�@20�`21�s�ڂ́A�I�u�W�F�N�g�����l�C�e�B�u�C���X�^���X�������o�����߂̃}�N���ł��B���̗��ł� _this �Ƃ��� NI_Test * �^�̕ϐ��Ƀl�C�e�B�u�C���X�^���X�������o���A�Ƃ����Ӗ��ɂȂ��܂��B�ȍ~�A_this �Ƃ����ϐ��Ńl�C�e�B�u�C���X�^���X�ɃA�N�Z�X�ł��܂��B23�s�ڂŁA���̃l�C�e�B�u�C���X�^���X�� Print ���\�b�h���Ăяo���Ă��܂��B</dd>
<dt>29�`40�s��</dt>
<dd>�@add ���\�b�h���錾���Ă��܂��B�����ł� numparams �� param ���g�p���Ă��܂��B</dd>
<dt>42�`62�s��</dt>
<dd>�@value �v���p�e�B���錾���Ă��܂��BTJS_BEGIN_NATIVE_PROP_DECL �� TJS_END_NATIVE_PROP_DECL �̗��}�N���ɂ́A���\�b�h�̐錾�Ɠ������A�v���p�e�B�����w�肵�܂��B<br />
<br />
�@TJS_BEGIN_NATIVE_PROP_GETTER �� TJS_END_NATIVE_PROP_GETTER �}�N���ň͂܂ꂽ�ꏊ�ɂ́A�Q�b�^�[���L�q���邱�Ƃ��ł��܂��B�Q�b�^�[���ł� tTJSVariant �^�ł��� *result �ɒl���ݒ肷���悤�ɋL�q���܂��B<br />
�@���l�ɁATJS_BEGIN_NATIVE_PROP_SETTER �� TJS_END_NATIVE_PROP_SETTER �}�N���ň͂܂ꂽ�ꏊ�ɂ̓Z�b�^�[���L�q���邱�Ƃ��ł��܂��B�Z�b�^�[���ł� tTJSVariant �^�ł��� *param �ɐݒ肳�����ׂ��l���i�[�����Ă����̂ŁA�������g���ď��������܂��B</dd>
<dt>64�`79�s��</dt>
<dd>�@�����ł͓ǂݏo�����p�v���p�e�B���錾���Ă��܂��B�Z�b�^�[�̑������� TJS_DENY_NATIVE_PROP_SETTER ���������Ƃɂ����A�ǂݏo�����p�v���p�e�B�����邱�Ƃ��ł��܂��B</dd></dl><br />
<br />
<br />
�@�l�C�e�B�u�N���X�̓o�^�́A�l�C�e�B�u�֐��̓o�^�Ɠ����ł��B�ȉ��Ƀe�X�g�R�[�h���Ꭶ���܂��B<br />
<br />
<br />
<code class="bq"><span class="weak">��:</span><br /><span class="linenumber">&nbsp;&nbsp;1|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;iTJSDispatch2&nbsp;*&nbsp;global&nbsp;=&nbsp;tjsengine-&gt;GetGlobalNoAddRef();<br />
<span class="linenumber">&nbsp;&nbsp;2|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="comment">//&nbsp;�O���[�o���I�u�W�F�N�g���擾</span><br />
<span class="linenumber">&nbsp;&nbsp;3|</span><br />
<span class="linenumber">&nbsp;&nbsp;4|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;iTJSDispatch2&nbsp;*cls&nbsp;=&nbsp;new&nbsp;NC_Test();&nbsp;<span class="comment">//&nbsp;NC_Test&nbsp;�̃I�u�W�F�N�g���쐬</span><br />
<span class="linenumber">&nbsp;&nbsp;5|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;tTJSVariant&nbsp;cls_var(cls);&nbsp;<span class="comment">//&nbsp;tTJSVariant&nbsp;�^&nbsp;cls_var&nbsp;�ɃI�u�W�F�N�g���ݒ�</span><br />
<span class="linenumber">&nbsp;&nbsp;6|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;cls-&gt;Release();&nbsp;<span class="comment">//&nbsp;cls&nbsp;��&nbsp;Release</span><br />
<span class="linenumber">&nbsp;&nbsp;7|</span><br />
<span class="linenumber">&nbsp;&nbsp;8|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;TJS_THROW_IF_ERROR(<br />
<span class="linenumber">&nbsp;&nbsp;9|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;global-&gt;PropSet(TJS_MEMBERENSURE,&nbsp;TJS_W(&quot;Test&quot;),&nbsp;NULL,&nbsp;&amp;cls_var,&nbsp;NULL));<br />
<span class="linenumber">&nbsp;10|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span class="comment">//&nbsp;�o�^</span><br />
<span class="linenumber">&nbsp;11|</span><br />
<span class="linenumber">&nbsp;12|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;tjsengine-&gt;ExecScript(TJS_W(<br />
<span class="linenumber">&nbsp;13|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;var&nbsp;test&nbsp;=&nbsp;new&nbsp;Test();\n&quot;<br />
<span class="linenumber">&nbsp;14|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;test.value&nbsp;=&nbsp;5;\n&quot;<br />
<span class="linenumber">&nbsp;15|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;var&nbsp;test2&nbsp;=&nbsp;new&nbsp;Test(test.square);\n&quot;<br />
<span class="linenumber">&nbsp;16|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;test2.add(3);\n&quot;<br />
<span class="linenumber">&nbsp;17|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&quot;test2.print();\n\0&quot;),<br />
<span class="linenumber">&nbsp;18|</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;NULL,&nbsp;NULL,&nbsp;NULL);&nbsp;<span class="comment">//&nbsp;�X�N���v�g�����s</span><br />
</code>
<br />
<br />
</div></div>
<script type="text/javascript" charset="Shift_JIS" src="documentid.js" ></script>
<script type="text/javascript" charset="Shift_JIS" src="postcontent.js" ></script>
</body>
</html>