C++ÓëJava±È½Ï(ת)
C++ÓëJava±È½Ï(ת)
Ó¢ÎÄÔÎÄ£ºhttp://www.javacoffeebreak.com/articles/thinkinginjava/comparingc++andjava.html
“×÷ΪһÃûC++³ÌÐòÔ±£¬ÎÒÃÇÔçÒÑÕÆÎÕÁËÃæÏò¶ÔÏó³ÌÐòÉè¼ÆµÄ»ù±¾¸ÅÄ¶øÇÒJavaµÄÓï·¨ÎÞÒÉÊǷdz£ÊìϤµÄ¡£ÊÂʵÉÏ£¬Java±¾À´¾ÍÊÇ´ÓC++ÑÜÉú³öÀ´µÄ¡£”
¡¡¡¡È»¶ø£¬C++ºÍJavaÖ®¼äÈÔ´æÔÚһЩÏÔÖøµÄ²îÒì¡£¿ÉÒÔÕâÑù˵£¬ÕâЩ²îÒì´ú±í׿¼ÊõµÄ¼«´ó½ø²½¡£Ò»µ©ÎÒÃÇŪÇå³þÁËÕâЩ²îÒ죬¾Í»áÀí½âΪʲô˵JavaÊÇÒ»ÖÖÓÅÐãµÄ³ÌÐòÉè¼ÆÓïÑÔ¡£±¾¸½Â¼½«Òýµ¼´ó¼ÒÈÏʶÓÃÓÚÇø·ÖJavaºÍC++µÄһЩÖØÒªÌØÕ÷¡£
¡¡¡¡(1) ×î´óµÄÕÏ°ÔÚÓÚËٶȣº½âÊ͹ýµÄJavaÒª±ÈCµÄÖ´ÐÐËÙ¶ÈÂýÉÏÔ¼20±¶¡£ÎÞÂÛʲô¶¼²»ÄÜ×èÖ¹JavaÓïÑÔ½øÐбàÒ롣д×÷±¾ÊéµÄʱºò£¬¸Õ¸Õ³öÏÖÁËһЩ׼ʵʱ±àÒëÆ÷£¬ËüÃÇÄÜÏÔÖø¼Ó¿ìËٶȡ£µ±È»£¬ÎÒÃÇÍêÈ«ÓÐÀíÓÉÈÏΪ»á³öÏÖÊÊÓÃÓÚ¸ü¶àÁ÷ÐÐƽ̨µÄ´¿¹ÌÓбàÒëÆ÷£¬µ«¼ÙÈôûÓÐÄÇЩ±àÒëÆ÷£¬ÓÉÓÚËٶȵÄÏÞÖÆ£¬±ØÐëÓÐЩÎÊÌâÊÇJava²»Äܽâ¾öµÄ¡£
¡¡¡¡(2) ºÍC++Ò»Ñù£¬JavaÒ²ÌṩÁËÁ½ÖÖÀàÐ͵Ä×¢ÊÍ¡£
¡¡¡¡(3) ËùÓж«Î÷¶¼±ØÐëÖÃÈëÒ»¸öÀà¡£²»´æÔÚÈ«¾Öº¯Êý»òÕßÈ«¾ÖÊý¾Ý¡£Èç¹ûÏë»ñµÃÓëÈ«¾Öº¯ÊýµÈ¼ÛµÄ¹¦ÄÜ£¬¿É¿¼Âǽ«static·½·¨ºÍstaticÊý¾ÝÖÃÈëÒ»¸öÀàÀï¡£×¢ÒâûÓÐÏó½á¹¹¡¢Ã¶¾Ù»òÕßÁªºÏÕâÒ»ÀàµÄ¶«Î÷£¬Ò»ÇÐÖ»ÓГÀà”£¨Class£©£¡
¡¡¡¡(4) ËùÓз½·¨¶¼ÊÇÔÚÀàµÄÖ÷Ì嶨ÒåµÄ¡£ËùÒÔÓÃC++µÄÑ۹⿴£¬ËƺõËùÓк¯Êý¶¼ÒÑǶÈ룬µ«ÊµÇé²¢·ÇÈçºÎ£¨Ç¶ÈëµÄÎÊÌâÔÚºóÃæ½²Êö£©¡£
¡¡¡¡(5) ÔÚJavaÖУ¬ÀඨÒå²ÉÈ¡¼¸ºõºÍC++Ò»ÑùµÄÐÎʽ¡£µ«Ã»ÓбêÖ¾½áÊøµÄ·ÖºÅ¡£Ã»ÓÐclass fooÕâÖÖÐÎʽµÄÀàÉùÃ÷£¬Ö»ÓÐÀඨÒå¡£
¡¡¡¡class aType()
¡¡¡¡void aMethod() {/* ·½·¨Ö÷Ìå*/}
¡¡¡¡}
¡¡¡¡(6) JavaÖÐûÓÐ×÷ÓÃÓò·¶Î§ÔËËã·û“::”¡£JavaÀûÓõãºÅ×öËùÓеÄÊÂÇ飬µ«¿ÉÒÔ²»Óÿ¼ÂÇËü£¬ÒòΪֻÄÜÔÚÒ»¸öÀàÀﶨÒåÔªËØ¡£¼´Ê¹ÄÇЩ·½·¨¶¨Ò壬Ҳ±ØÐëÔÚÒ»¸öÀàµÄÄÚ²¿£¬ËùÒÔ¸ù±¾Ã»ÓбØÒªÖ¸¶¨×÷ÓÃÓòµÄ·¶Î§¡£ÎÒÃÇ×¢Òâµ½µÄÒ»Ïî²îÒìÊǶÔstatic·½·¨µÄµ÷ÓãºÊ¹ÓÃClassName.methodName()¡£³ý´ËÒÔÍ⣬package£¨°ü£©µÄÃû×ÖÊÇÓõãºÅ½¨Á¢µÄ£¬²¢ÄÜÓÃimport¹Ø¼ü×ÖʵÏÖC++µÄ“#include”µÄÒ»²¿·Ö¹¦ÄÜ¡£ÀýÈçÏÂÃæÕâ¸öÓï¾ä£º
¡¡¡¡import java.awt.*;
¡¡¡¡£¨#include²¢²»Ö±½ÓÓ³Éä³Éimport£¬µ«ÔÚʹÓÃʱÓÐÀàËƵĸоõ¡££©
¡¡¡¡(7) ÓëC++ÀàËÆ£¬Javaº¬ÓÐһϵÁГÖ÷ÀàÐÍ”£¨Primitive type£©£¬ÒÔʵÏÖ¸üÓÐЧÂʵķÃÎÊ¡£ÔÚJavaÖУ¬ÕâЩÀàÐÍ°üÀ¨boolean£¬char£¬byte£¬short£¬int£¬long£¬floatÒÔ¼°dou
Ïà¹ØÎĵµ£º
ÍƼöÒ»¿îJava·´±àÒëÆ÷£¬Ò²Ê¹ÓÃÁËͦ¾ÃµÄÁË£¬¸Ð¾õ»¹ÊǺܺÃÓ㬾ÍÄóöºÍ´ó¼Ò·ÖÏíһϡ£
Õâ¿î·´±àÒëÆ÷½Ð "Java Decompiler", ÓÉ Pavel Kouznetsov¿ª·¢£¬Ä¿Ç°×îа汾Ϊ0.2.5.
ËüÓÉ C++¿ª·¢£¬²¢ÇÒ¹Ù·½¿ÉÒÔÏÂÔØ windows¡¢linuxºÍÆ»¹ûMac OsÈý¸öƽ̨µÄ¿ÉÖ´ÐгÌÐò¡£
±¾ÈËÖ®ËùÒÔÈÏΪËü»¹²»´í£¬ÊÇÆäÓÐÏÂÃ漸¸ö¹ ......
ÔÚµ÷ÊÔµÄʱºò£¬Èç¹ûÒªÏÔʾbyteµÄÖµÊÇ·ñÓëÔ¤ÆÚÒ»Ö£¬Ò»°ãת»»Îª16½øÖƵÄ×Ö·û´®£¬»òÕßʹÓÃbase64ת»»ºó£¬È»ºóÏÔʾ³öÀ´¡£
/**
* ×Ö·û´®×ª»»³ÉÊ®Áù½øÖÆ×Ö·û´®
*/
public static String str2HexStr(String str) {
char[] chars = "0123456789ABCDEF".toCharArray();
StringBuilder sb = new StringBuilder("");
......
VC++Á¬½ÓAccess
/*
*¶ÁÈ¡AccessÊý¾Ý¿âÖеÄÊý¾Ý
*/
void CMFCSQLDlg::OnButton1()
{
CoInitialize(NULL);
_ConnectionPtr m_pAppConn;
HRESULT hResult;
try
......
VC++Á¬½ÓSQLServer
/*
*Á¬½ÓSQL
*/
void CMFCSQLDlg::OnButton3()
{
// TODO: Add your control notification handler code here
_ConnectionPtr m_pConnection;
// ÔÚÓ¦ÓóÌÐòµÄInitInstanceº¯ÊýÀï¼ÓÈë
&nbs ......
/*
*SQLServerÌí¼Ó²Ù×÷ʵÏÖ
*/
void CMFCSQLDlg::OnButton2()
{
// TODO: Add your control notification handler code here
CString strsql;
CString strnum="mynum3";
CString strage="myage3";
HRESULT hResult;
_variant_t RecordsAffected;
CoInitialize(NULL);
_ConnectionPtr m_pAppConn;
hResul ......