AspectC++
ಆಸ್ಪೆಕ್ಟ್ಸಿ + + ಎಂಬುದು ಸಿ ಮತ್ತು ಸಿ + + ಭಾಷೆಗಳ ಅಂಶ-ಆಧಾರಿತ ವಿಸ್ತರಣೆಯಾಗಿದೆ. ಇದು ಸೋರ್ಸ್-ಟು-ಸೋರ್ಸ್ ಕಂಪೈಲರ್ ಅನ್ನು ಹೊಂದಿದೆ, ಇದು ಆಸ್ಪೆಕ್ಟಿಸಿ + + ಸೋರ್ಸ್ ಕೋಡ್ ಅನ್ನು ಕಂಪೈಲೆಬಲ್ ಸಿ + + ಆಗಿ ಭಾಷಾಂತರಿಸುತ್ತದೆ. ಕಂಪೈಲರ್ ಗ್ನೂ ಜಿಪಿಎಲ್ ಅಡಿಯಲ್ಲಿ ಲಭ್ಯವಿದೆ, ಆದರೂ ಮೈಕ್ರೋಸಾಫ್ಟ್ ವಿಂಡೋಸ್ಗೆ ನಿರ್ದಿಷ್ಟವಾದ ಕೆಲವು ವಿಸ್ತರಣೆಗಳು ಶುದ್ಧ-ವ್ಯವಸ್ಥೆಗಳಾದ ಜಿಎಂಬಿಎಚ್ ಮೂಲಕ ಮಾತ್ರ ಲಭ್ಯವಿವೆ. ಆಸ್ಪೆಕ್ಟ್-ಓರಿಯೆಂಟೆಡ್ ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಒಂದೇ ಮಾಡ್ಯೂಲ್ನಲ್ಲಿ ಕ್ರಾಸ್-ಕಟಿಂಗ್ ಕಾಳಜಿಗಳನ್ನು ಮಾಡ್ಯುಲರೈಸ್ ಮಾಡಲು ಅನುಮತಿಸುತ್ತದೆ, ಇದು ಒಂದು ಅಂಶವಾಗಿದೆ. ಅಂಶಗಳು ಅಸ್ತಿತ್ವದಲ್ಲಿರುವ ವರ್ಗಗಳನ್ನು ಮಾರ್ಪಡಿಸಬಹುದು, ಆದರೆ ಸಾಮಾನ್ಯವಾಗಿ ಅವು ಅಸ್ತಿತ್ವದಲ್ಲಿರುವ ಕಾರ್ಯಚಟುವಟಿಕೆಯ ಮೊದಲು, ನಂತರ ಅಥವಾ ಅದರ ಸುತ್ತ ನಡೆಯುವ 'ಸಲಹೆಯನ್ನು' ಒದಗಿಸುತ್ತವೆ. ಉದಾಹರಣೆ ಒಂದು ನಿರ್ದಿಷ್ಟ ಕಾರ್ಯಕ್ಕೆ ಎಲ್ಲಾ ಕರೆಗಳನ್ನು ಅನೇಕ ಸ್ಥಳಗಳಲ್ಲಿ 'ಸೆರ್' ಅಥವಾ ಮುದ್ರಣ ಹೇಳಿಕೆಗಳನ್ನು ಸೇರಿಸುವ ಬದಲು ಒಂದು ಅಂಶವನ್ನು ಬಳಸಿಕೊಂಡು ಪತ್ತೆಹಚ್ಚಬಹುದುಃ ಆಕಾರ ಟ್ರೇಸರ್ {ಸಲಹೆ ಕರೆ ("%% ಐಟರ್ಃಃ ಮರುಹೊಂದಿಸಿ (.)"): ಮೊದಲು () {ಸೆರ್ <<"ಐಟರ್ಗೆ ಕರೆ ಮಾಡಲು ಹೊರಟಿದ್ದುಃಃ" <<ಜಾಯಿನ್ಪಾಯಿಂಟ್ಃಃ ಸಿಗ್ನೇಚರ್ () <<ಎಂಡ್ಎಲ್;} "ಗಾಗಿ ಮರುಹೊಂದಿಸಿ; ಟ್ರೇಸರ್ ಅಂಶವು% ಐಟರ್ಃಃ ಮರುಹೊಂದಿಸಿ ಯಾವುದೇ ಕರೆ ಮಾಡುವ ಮೊದಲು ಸಂದೇಶವನ್ನು ಮುದ್ರಿಸುತ್ತದೆ. % Iter ವಾಕ್ಯರಚನೆಯು Iterನಲ್ಲಿ ಕೊನೆಗೊಳ್ಳುವ ಎಲ್ಲಾ ವರ್ಗಗಳಿಗೆ ಹೊಂದಿಕೆಯಾಗುತ್ತದೆ ಎಂದರ್ಥ. ಮೂಲ ಸಂಕೇತದಲ್ಲಿರುವ ಪ್ರತಿಯೊಂದು 'ಹೊಂದಾಣಿಕೆಯ' ಸ್ಥಳವನ್ನು ಜಾಯಿನ್ ಪಾಯಿಂಟ್ ಎಂದು ಕರೆಯಲಾಗುತ್ತದೆ-ಸಲಹೆಯನ್ನು ಆ ಸಂಕೇತಕ್ಕೆ ಸೇರಿಸಲಾಗುತ್ತದೆ (ಅಥವಾ ಸಲಹೆ ನೀಡಲಾಗುತ್ತದೆ). ಜಾಯಿನ್ ಪಾಯಿಂಟ್ ಬಗ್ಗೆ ಮಾಹಿತಿಯನ್ನು ಒದಗಿಸಲು ಮತ್ತು ಪ್ರವೇಶಿಸಲು ಆಸ್ಪೆಕ್ಟಿಸಿ + + ಜಾಯಿನ್ ಪಾಯಿಂಟ್ ಎಪಿಐ ಅನ್ನು ಒದಗಿಸುತ್ತದೆ. ಉದಾಹರಣೆಗೆ, ಫಂಕ್ಷನ್ಃ ಜಾಯಿನ್ಪಾಯಿಂಟ್ಃಃ ಸಿಗ್ನೇಚರ್ () ಕರೆಯಲಾಗುವ ಫಂಕ್ಷನ್ನ ಹೆಸರನ್ನು (ಅದು% Iter:: ರೀಸೆಟ್ಗೆ ಹೊಂದಿಕೆಯಾಗುತ್ತದೆ) ಹಿಂದಿರುಗಿಸುತ್ತದೆ. ಜಾಯಿನ್ ಪಾಯಿಂಟ್ ಎಪಿಐ ಕಂಪೈಲ್-ಟೈಮ್ ಪ್ರಕಾರದ ಮಾಹಿತಿಯನ್ನು ಸಹ ಒದಗಿಸುತ್ತದೆ, ಇದನ್ನು ಆರ್ಗ್ಯುಮೆಂಟ್ಗಳ ಪ್ರಕಾರ ಅಥವಾ ಮೌಲ್ಯ ಮತ್ತು ವಿಧಾನ ಅಥವಾ ಕಾರ್ಯದ ರಿಟರ್ನ್ ಪ್ರಕಾರ ಮತ್ತು ರಿಟರ್ನ್ ಮೌಲ್ಯವನ್ನು ಪ್ರವೇಶಿಸಲು ಒಂದು ಅಂಶದೊಳಗೆ ಬಳಸಬಹುದು. ಉಲ್ಲೇಖಗಳು ಬಾಹ್ಯ ಕೊಂಡಿಗಳು ಆಸ್ಪೆಕ್ಟ್ಸಿ + + ಹಿಂದಿನ ಎಒಎಸ್ಡಿ ಸಮ್ಮೇಳನಗಳಲ್ಲಿ ಆಸ್ಪೆಕ್ಟ್-ಓರಿಯೆಂಟೆಡ್ ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಮತ್ತು ಆಸ್ಪೆಕ್ಟ್ಸಿ + + ಲೇಖನಗಳು ಆಸ್ಪೆಕ್ಟ್-ಓರಿಯೆಂಟೆಡ್ ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಸಿ + + ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಭಾಷಾ ಕುಟುಂಬ