Dereferee: instrumenting C plus plus pointers with meaningful runtime diagnostics

被引:2
|
作者
Allevato, Anthony [1 ]
Edwards, Stephen H. [1 ]
机构
[1] Virginia Tech, Dept Comp Sci, Blacksburg, VA 24061 USA
来源
SOFTWARE-PRACTICE & EXPERIENCE | 2014年 / 44卷 / 08期
基金
美国国家科学基金会;
关键词
C plus; memory management; pointers; debugging; testing;
D O I
10.1002/spe.2184
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Proper memory management and pointer usage often prove to be the most difficult concepts for students learning C++ to grasp. Compounding this problem is the fact that the compilers and runtime environments traditionally used to introduce these concepts leave much to be desired with regard to generating meaningful diagnostics to assist students in tracking down and fixing memory-related logical errors. To alleviate this, we have developed Dereferee, an advanced yet thin wrapper around C++ pointers that greatly increases the quality of these runtime diagnostics, but with only a small amount of intrusion into the development process. With regard to performance, memory-intensive programs will experience execution times approximately 20-30 times slower when using Dereferee, which is comparable with other similar tools. Furthermore, the library has been designed to be customizable and easily disabled to transition codes from development to production. Copyright (C) 2013 John Wiley & Sons, Ltd.
引用
收藏
页码:973 / 997
页数:25
相关论文
共 50 条
  • [31] The magnetic spectrum of beta rays emitted by the ThB plus C plus C' plus C"
    Arnoult, R
    COMPTES RENDUS HEBDOMADAIRES DES SEANCES DE L ACADEMIE DES SCIENCES, 1934, 198 : 1603 - 1605
  • [32] The magnetic spectrum of beta rays emitted by AcB plus C plus C' plus C''
    Graf, T
    COMPTES RENDUS HEBDOMADAIRES DES SEANCES DE L ACADEMIE DES SCIENCES, 1933, 197 : 238 - 241
  • [33] The Pinocchio C plus plus library
    Carpentier, Justin
    Saurel, Guilhem
    Buondonno, Gabriele
    Mirabel, Joseph
    Lamiraux, Florent
    Stasse, Olivier
    Mansard, Nicolas
    2019 IEEE/SICE INTERNATIONAL SYMPOSIUM ON SYSTEM INTEGRATION (SII), 2019, : 614 - 619
  • [34] Mathematizing C plus plus Concurrency
    Batty, Mark
    Owens, Scott
    Sarkar, Susmit
    Sewell, Peter
    Weber, Tjark
    ACM SIGPLAN NOTICES, 2011, 46 (01) : 55 - 66
  • [35] C plus plus constructors - Response
    Meyers, S
    DR DOBBS JOURNAL, 1997, 22 (08): : 12 - 12
  • [36] Programming with C plus plus concepts
    Jaervi, Jaakko
    Marcus, Mat
    Smith, Jacob N.
    SCIENCE OF COMPUTER PROGRAMMING, 2010, 75 (07) : 596 - 614
  • [37] C plus plus string performance
    Kochubeevsky, L
    DR DOBBS JOURNAL, 2003, 28 (10): : 28 - +
  • [38] Mathematizing C plus plus Concurrency
    Batty, Mark
    Owens, Scott
    Sarkar, Susmit
    Sewell, Peter
    Weber, Tjark
    POPL 11: PROCEEDINGS OF THE 38TH ANNUAL ACM SIGPLAN-SIGACT SYMPOSIUM ON PRINCIPLES OF PROGRAMMING LANGUAGES, 2011, : 55 - 66
  • [39] C plus plus standards - Response
    Stevens, A
    DR DOBBS JOURNAL, 1997, 22 (11): : 12 - 12
  • [40] A C plus plus integrator class
    Conway, DJ
    DR DOBBS JOURNAL, 1995, 20 (12): : 52 - +