Friday, December 09, 2016

How to Get Compare View in Github

Append compare at the end of your repository url and choose from the drop down list

2. URL Way:
[repository url]/compare/[branch 1]...[branch 2]

Useful Material for Reading:

Tuesday, November 03, 2015

Evernote Cannot Connect with Server

Way 1:
Open the Internet Explorer, and wait for home page loading completed.
Open Evernote and input correct credential.
If it does not work, go to Way 2.

Way 2:
Open Internet Explorer,
Click Internet options under the tools.
Click Advance tab,

Click Reset button

Close all opened pop up windows
Open Internet Explorer again, will see the home page load correctly.
Open Evernote and input correct credential, now should work.

Friday, September 20, 2013

Set the Tab Size in notpad++

The following steps can change the tab size in the notepad++
1. settings
3. language menu/tab settings
4. change the tab size

Friday, August 30, 2013

Install java compiler

why need java compiler?
transfer the human-readable code into computer understand code.

how to install?
  1. download the JDK
  2. install the JDK
  3. change the path environment variable.
  • copy the java/bin path
  • open the computer properities
  • click the advanced system setting
  • click the environment variables
  • new "path" and paste the java/bin path
4. go to the command line window and input "javac" and will see the result.(if there is no java compiler, the message will show "there is no external and internal command"something like that)

Tuesday, August 13, 2013

four type of cast

four type of cast
reinterpret_cast <new_type> (expression)
dynamic_cast <new_type> (expression)
static_cast <new_type> (expression)
const_cast <new_type> (expression)

to interpret a value as a different type.
  • pointer->intergers
  • intergers-> pointer
  • pointers from one type to another type

used with pointers and references to objects
we can not cast a base class to derived class

CBase b;
CBase* pb;
CDerived d;
CDeried* pd;

pb = dynamic_cast<CBase*>(&d);
pd = dynamic-cast<CDerived>(&b);  //wrong: b is base class and it does not have the derived class parts


CBase* pba = new CDerived;
CBase* pbb = new CBase;

CDerived* pd;
pd = dynamic_cast<CDerived*>(pba);

pd = dynamic_casr<CDerived*>(pbb);  //wrong; pbb is base class and can not cast to a derived class


perform automatically and can perform conversions between pointers to related classes, not only from the derived class to its base, but also from a base class to it derived.

it will have some run-time errors;

这种类型转换对常量const 进行设置或取消操作:
this type of casting manipulates the constness of an objects,either to be set or to be removed.
for example, in order to pass a const argument to a function that expects a non_constant parameter:

const char* c ="sample text"; // const
print(const_cast<char*> (c));  cast the const char* to a char*